#include <REGX52.H> 
#include "Delay.h"
unsigned char MatrixKey()
{   unsigned char KeyNumber=0;	
//		P1=0xFF;
	  P1_3=0;
		if(P1_7==0){Delay(20);while(P1_7==0);Delay(20);KeyNumber=1;}
    if(P1_6==0){Delay(20);while(P1_6==0);Delay(20);KeyNumber=5;}
		if(P1_5==0){Delay(20);while(P1_5==0);Delay(20);KeyNumber=9;}
		if(P1_4==0){Delay(20);while(P1_4==0);Delay(20);KeyNumber=13;}
		
	P1=0xFF;
	  P1_2=0;
		if(P1_7==0){Delay(20);while(P1_7==0);Delay(20);KeyNumber=2;}
    if(P1_6==0){Delay(20);while(P1_6==0);Delay(20);KeyNumber=6;}
		if(P1_5==0){Delay(20);while(P1_5==0);Delay(20);KeyNumber=10;}
		if(P1_4==0){Delay(20);while(P1_4==0);Delay(20);KeyNumber=14;}
		
		P1=0xFF;
	  P1_1=0;
		if(P1_7==0){Delay(20);while(P1_7==0);Delay(20);KeyNumber=3;}
    if(P1_6==0){Delay(20);while(P1_6==0);Delay(20);KeyNumber=7;}
		if(P1_5==0){Delay(20);while(P1_5==0);Delay(20);KeyNumber=11;}
		if(P1_4==0){Delay(20);while(P1_4==0);Delay(20);KeyNumber=15;}
	P1=0xFF;
	  P1_0=0;
		if(P1_7==0){Delay(20);while(P1_7==0);Delay(20);KeyNumber=4;}
    if(P1_6==0){Delay(20);while(P1_6==0);Delay(20);KeyNumber=8;}
		if(P1_5==0){Delay(20);while(P1_5==0);Delay(20);KeyNumber=12;}
		if(P1_4==0){Delay(20);while(P1_4==0);Delay(20);KeyNumber=16;}

		
		return KeyNumber;
  
}